#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#file-like Object
# 像open()函数返回的这种有个read()方法的对象，在Python中统称为file-like Object。
# 除了file外，还可以是内存的字节流，网络流，自定义流等等。
# file-like Object不要求从特定类继承，只要写个read()方法就行。
# StringIO就是在内存中创建的file-like Object，常用作临时缓冲。
# 要把StringIO变为file-like Object，可以用一个BytesIO()实现：
from io import StringIO
with StringIO('hello\nworld\n') as f:
    while True:
        s = f.readline()
        if s=='':
            break
        print(s.strip())
        
print("------------------------------")        
#写入
with StringIO() as f:
    f.write('hello')
    print(f.getvalue())